home *** CD-ROM | disk | FTP | other *** search
- ;ERED/ASM - November 14, 1983 - Ed Ream Editor special
- ;Modified - February 10, 1984 - Added @SPEC for speed
- ;Modified - April 1, 1984 - Added @ERRET and EXIT to handle
- ;error calls properly and Extended Cursor Mode on exit
- ;
- COM '<LC is copyrighted (c) 1982 by Jim Frimmel>
- ;
- ORG 5200H
- @START LD HL,(4049H) ;P/u Model I HIGH$
- CALL @MOD13 ;Test for Model I/III
- JR NZ,$+5 ;Go if Model I
- LD HL,(4411H) ; else use III's
- LD SP,HL ;Set stack area
- LD HL,4423H ;KFLAG$ on model I
- JR NZ,$+5 ;if model III
- LD HL,429FH ;KFLAG$ on model III
- SET 6,(HL) ;Turn on ECM
- CALL @GO ;Initialize
- CALL MAIN ;Execute user prog
- LD HL,0 ;Set return code
- PUSH HL
- CALL EXIT ;Back to DOS
- $$STEMP DEFL 0 ;Init relative storage
- *GET LCMACS ;Get macros used by LC
- ; establish LC options
- @_ARGS DEFL 0
- @_REDIRECT DEFL 0
- @_KBECHO DEFL 0
- @_FIXBUFS DEFL -1
- @_MAXFILES DEFL 2
- *GET ED2 ;Fetch user programs
- *GET ED3
- *GET ED4
- *GET ED5
- *GET ED6
- *GET ED7
- *GET ED8
- *GET ED9
- *GET ED10
- @ERRET
- OR 11000000B
- CALL 4409H
- RET
- EXIT
- LD HL,@FVTBL
- LD B,@FCNT
- E1 LD E,(HL)
- INC HL
- LD D,(HL)
- INC HL
- LD A,E
- OR D
- JR Z,E2
- PUSH BC
- PUSH HL
- EX DE,HL
- CALL @FCLS9
- POP HL
- POP BC
- E2 DJNZ E1
- LD HL,4423H ;KFLAG$ on model I
- CALL @MOD13 ;Which machine?
- JR NZ,$+5 ;Skip for model I
- LD HL,429FH ;KFLAG$ on model III
- RES 6,(HL) ;Turn ECM off
- $GA HL
- LD A,H
- OR L
- JP Z,402DH
- JP 4030H
- *SEARCH IN/LIB ;Installation lib
- *SEARCH LC/LIB ;Standard lib always!
- IFDEF FOPEN
- *M
- @SPEC PUSH HL ;Save registers
- PUSH DE
- $?1 LD A,(HL) ;Exit on space or less
- CP 33
- JR C,$?3
- CP 97 ;Convert l/c to U/C
- JR C,$?2
- CP 123
- JR NC,$?2
- XOR 32
- $?2 LD (DE),A
- INC HL ;bump pointers
- INC DE
- JR $?1 ;loop until exit char
- $?3 LD A,3 ;terminate with ETX
- LD (DE),A
- POP DE ;restore regs
- POP HL
- RET
- ENDIF
- $$STORG EQU $ ;Set to 1st storage byte
- @PROGEND DEFL $$STORG+$$STEMP ;Establish program end
- END @START
-